package edzest.basic;

import java.util.Scanner;

public class J08_SungJuk_V3 {

	public static void main(String[] args) {
		// 성적 처리 프로그램 v3
		// 배열과 반복문을 이용
		// 조건 : 성적처리할 학생수를 먼저 입력받음
		String name[];
		int kor[], eng[], mat[];
		int tot[];
		char grd[];
		float avg[];
		int cnt = 0;
		
		Scanner sc = new Scanner(System.in);
		System.out.println( "처리할 학생수는?" );
		
		// 입력받아서 배열의 크기들이 결정됨
		cnt = sc.nextInt();
		name = new String[ cnt ];
		kor = new int[ cnt ];
		eng = new int[ cnt ];
		mat = new int[ cnt ];
		tot = new int[ cnt ];
		grd = new char[ cnt ];
		avg = new float[ cnt ];
		
		final char SU = '수';
		final char WU = '우';
		final char MI = '미';
		final char YANG = '양';
		final char GA = '가';
		
		// 반복처리를 통해 학생 데이터를 입력받음
		System.out.println("'이름 국어 영어 수학' 순으로 입력하세요");
		for( int i = 0; i < cnt; ++i){
			System.out.println("[" + (i+1) + "번째 학생 데이터 입력]");
			name[i] = sc.next();
			kor[i] = sc.nextInt();
			eng[i] = sc.nextInt();
			mat[i] = sc.nextInt();
		}
		
		// 총점, 학점, 평균 계산
		for(int i = 0; i < cnt; ++i){
			tot[i] = kor[i] + eng[i] + mat[i];
			avg[i] = (float)tot[i] / 3;
			switch( (int)avg[i] / 10 ){
				case 10 : case 9: grd[i] =SU; break;
				case 8: grd[i] = WU; break;
				case 7: grd[i] = MI; break;
				case 6: grd[i] = YANG; break;
				default: grd[i] = GA;
			}
		}
		
		// 결과 출력
		for(int i = 0; i < cnt; ++i){
			System.out.println( "학생 이름: " + name[i] );
			System.out.println( "국어 성적: " + kor[i] + "" );
			System.out.println( "영어 성적: " + eng[i] + "" );
			System.out.println( "수학 성적: " + mat[i] + "" );
			System.out.println( "성적 총계: " + tot[i] + "" );
			System.out.println( "평균 성적: " + avg[i] + "" );
			System.out.println( "학점: " + grd[i] + "" );
		}
		
		sc.close();
	}

}
